﻿/**
 * 给定一个数组，以及一个未知的字符串S 
 * Ai表示[1...i)之间有多少个字母与Si相等
 * 要求还原字符串
 * 枚举一下即可
 */
#include <bits/stdc++.h>
using namespace std;

using llt = long long;
using vi = vector<int>;

int N;
vi A;
string S;

const string & proc(){
    S.assign(N, '\0');

    vector<vi> pos;
    for(int j=0;j<N;++j){
        auto v = A[j];
        bool flag = true;
        for(int i=0;i<pos.size();++i){
            if(pos[i].back() + 1 == v){
                pos[i].emplace_back(v);
                flag = false;
                S[j] = 'a' + i;
                break;
            }
        }
        if(flag) {
            assert(v == 0);
            pos.emplace_back(vi(1, v));
            S[j] = 'a' + (pos.size() - 1);
        }
    }

    return S;
}

int main(){
#ifndef ONLINE_JUDGE
    freopen("z.txt", "r", stdin);
#endif
    ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    int nofkase = 1; 
    cin >> nofkase;
    while(nofkase--){
        cin >> N;
        A.assign(N, {});
        for(auto & i : A) cin >> i;
        cout << proc() << "\n";      
    }
    return 0;
}